﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;

using SOAPServices.Persistencia;
using SOAPServices.Dominio;

namespace SOAPServices
{    
    public class Estaciones : IEstaciones
    {
        private EstacionDAO estacionDAO = null;
        private EstacionDAO EstacionDAO
        {
            get
            {
                if (estacionDAO == null)
                    estacionDAO = new EstacionDAO();
                return estacionDAO;
            }
        }

        public Estacion CrearEstacion(string descripcion)
        {
            Estacion estacionACrear = new Estacion()
            {
                Descripcion = descripcion,                
            };
            return EstacionDAO.Crear(estacionACrear);
        }

        public Estacion ObtenerEstacion(int codigo)
        {
            return EstacionDAO.Obtener(codigo);
        }

        public Estacion ModificarEstacion(int codigo, string descripcion)
        {
            Estacion estacionAModificar = new Estacion()
            {
                Codigo = codigo,
                Descripcion = descripcion,                
            };
            return EstacionDAO.Crear(estacionAModificar);
        }

        public void EliminarEstacion(int codigo)
        {
            Estacion estacionExistente = EstacionDAO.Obtener(codigo);
            EstacionDAO.Eliminar(estacionExistente);
        }

        public List<Estacion> ListarEstacion()
        {
            return EstacionDAO.ListarTodos().ToList();
        }
    }
}
